// 导入组件，但系统非常庞大时建议使用懒加载
import { createRouter, createWebHistory } from 'vue-router'
import Login from '../views/Login.vue'
import Home from '../views/Home.vue'
// import Dict from '../views/DictItem.vue'
// import Dictionary from '../views/Dictionary.vue'

// 创建路由表，连接各个组件，给组件一个路径
/*
	./ 当前目录
	../ 上一层目录
	/ 根目录
*/
const routes = [
	// login与home同级
	{
		path: '/', // 缺省代表自动加载
		component: Login
	},
	{ // 登陆后跳转home
		path: '/home',
		component: Home,
		// 重定向
		redirect: '/home/hall',
		beforeEnter:(to,from,next)=>{
			if(window.sessionStorage.getItem('loginUser')!=null)
				next()
			else{
				alert("请先登录")
				router.push('/')
			}
		},
		// 嵌套路由，在home页中的导航区
		children:[
		{
			path: 'hall', // path不要再加/
			name: 'hall',
			// 路由懒加载
			component: () => import('../views/Hall.vue')
		},
		{
			path: 'dictionary', // path不要再加/
			name: 'dictionary',
			// 路由懒加载
			component: () => import('../views/Dictionary.vue')
		},
		{
		 	path: 'dictItem', // path不要再加/
		 	name: 'dictItem',
		 	// 路由懒加载
		 	component: () => import('../views/DictItem.vue')
		},
	    {
			path: 'userManagement', // path不要再加/
			name: 'userManagement',
			// 路由懒加载
			component: () => import('../views/User.vue')
		},
		{
			path: 'myself', // path不要再加/
			name: 'myself',
			// 路由懒加载
			component: () => import('../views/PI.vue')
		},
		
		{
			path: 'launchActivity', // path不要再加/
			name: 'launchActivity',
			// 路由懒加载
			component: () => import('../views/Activity.vue')
		},
		{
			path: 'approvalActivity', // path不要再加/
			name: 'approvalActivity',
			// 路由懒加载
			component: () => import('../views/Approval.vue') // 领导的
		},
		{
			path: 'activityManagement', // path不要再加/
			name: 'activityManagement',
			// 路由懒加载
			component: () => import('../views/Sa.vue') // 管理员的
		},
		{
			path: 'markActivity', // path不要再加/
			name: 'markActivity',
			// 路由懒加载
			component: () => import('../views/Grade.vue') // 老师的
		},
		{
			path: 'signUpActivity', // path不要再加/
			name: 'signUpActivity',
			// 路由懒加载
			component: () => import('../views/Student.vue') // 学生的
		},
		{
			path: 'facultyManagement', // path不要再加/
			name: 'facultyManagement',
			// 路由懒加载
			component: () => import('../views/Faculty.vue') // 学生的
		}
		// {
		// 	path: 'grantResource', // path不要再加/
		// 	name: 'grantResource',
		// 	// 路由懒加载
		// 	component: () => import('../views/auth/RoleAssResource.vue') // 管理员的
		// },
		// {
		// 	path: 'grantRole', // path不要再加/
		// 	name: 'grantRole',
		// 	// 路由懒加载
		// 	component: () => import('../views/auth/UserAssRole.vue') // 管理员的
		// }
	  ],
	 }
]

// 创建路由实例，并传递路由表‘routes’的配置
const router = createRouter({
	// 路径不会有＃
  history: createWebHistory(process.env.BASE_URL),
  routes
})

router.beforeEach((to,from,next)=>{
	// console.log(to)
	// console.log(from)
	if(window.sessionStorage.getItem('loginUser')!=null)
		next()
	else{
		if(to.path!='/')
		{
			router.push('/')
			next()
			alert("请先登录")
		}
		else{  
			next()
		}
	}
})

export default router
